#pragma once
#include "CShape.h"

class CRectangle :
	public CShape
{
protected: 
	CRectangle(CCoreServices * pCore);
public: 
	static HRESULT Create(CDependencyObject * * ppObject, CREATEPARAMETERS * pCreate);
	virtual XUINT32 GetTypeIndex() const;
	virtual HRESULT SetValue(CDependencyProperty * pdp, CValue * pValue);
	virtual HRESULT UpdateRenderGeometry();
	virtual HRESULT UpdateRasterizerPath();
protected: 
	virtual HRESULT MeasureOverride(struct XSIZEF availableSize, struct XSIZEF & desiredSize);
	virtual HRESULT ArrangeOverride(struct XSIZEF finalSize, struct XSIZEF & newFinalSize);
public: 
	XFLOAT m_eRadiusX;
	XFLOAT m_eRadiusY;
protected: 
	virtual XBOOL CanStretchGeometry();
};